#define _CRT_SECURE_NO_WARNINGS 1

#include <bits/stdc++.h>
using namespace std;

////提取字符串中的子字符串
//int main()
//{
//	string str = "Hello world";
//	cout << str.substr(0, 5) << '\n';
//	string s = str.substr(0, 5);
//	cout << s << endl;
//	cout << str.substr(2, 6) << '\n';
//
//
//	return 0;
//}



//int main()
//{
//	string s(6, 'A');
//	cout << s << '\n';
// 
//	char buf[100];
//	scanf("%s", buf);
//	string str(buf);
//	printf("str = %s\n", str.c_str());
// 
//	return 0;
//}


////.length() / .size()
//int main()
//{
//	string s = "ABCDEFGH";
//	string str = "Li Ming";
//
//
//	int len1 = s.length();
//	int len2 = s.size();
//	int len3 = str.length();
//
//	cout << len1 << ' ' << len2 << ' ' << len3 << '\n';
//
//	return 0;
//}



////  + 或  .append()
//int main()
//{
//	string s1 = "beiming";
//	string s2 = "youyu";
//	string s3 = "muzi";
//
//	string str1 = s1 + ' ' + s2;
//	string str2 = s3.append(",").append(s1).append(" ").append(s2);
//
//	cout << str1 << '\n' << str2 << '\n';
//
//	return 0;
//}



//// .find 字符串查找
//int main()
//{
//	string s = "ABCDEFGH";
//	int n = s.find("DEF");
//	cout << n << '\n';
//	cout << s.find("D") << '\n';
//
//	size_t m = s.find('F');
//	cout << m << '\n';
//
//	return 0;
//}



//// .replace 字符串替换
//int main()
//{
//	string s1 = "beimingyouyu";
//	string str = s1.replace(0, 2, "XX");
//	cout << str << '\n';
//
//	s1.replace(3, 4, "AAAA");
//	cout << s1 << '\n';
//
//	string s2 = "abcedfg";
//
//	s2.replace(1,4,"XX");
//	cout << s2 << '\n';
//
//	return 0;
//}



//// .compare 字符串比较
//int main()
//{
//	string s1 = "aaaaa";
//	string s2 = "ccccc";
//	int ret = s1.compare(s2);
//	cout << ret << '\n';
//
//	string s3 = "xaaaa";
//	cout << s3.compare("ccccc") << '\n';
//
//	string s4 = "abcd";
//	cout << s4.compare("abcd") << '\n';
//
//	return 0;
//}



//// sort排序
//int main()
//{
//	int arr[100] = {0};
//	int n = 0, i = 0;
//	cin >> n;
//	for (i = 0; i <n; i++)
//	{
//		cin >> arr[i];
//	}
//	cout << '\n';
//
//	sort(arr, arr + n);
//	for (i = 0; i < n; i++)
//	{
//		cout << arr[i] << ' ';//正序输出
//	}
//	cout << '\n';
//
//	for (i = n-1; i >= 0; i--)
//	{
//		cout << arr[i] << ' ';//逆序
//	}
//	cout << '\n';
//
//
//	return 0;
//}




int main()
{
	vector<int> arr = { 3, 1, 2, 7, 4, 6, 9, 10, 5, 8 };
	int i = 0;
	cout << "原：\n";
	for (i = 0; i < arr.size(); i++)
	{
		cout << arr[i] << ' ';
	}
	cout << '\n';

	cout << "排序后：\n";
	//sort(arr.begin(), arr.end());
	sort(arr.begin(), arr.end(), [](const int& n, const int& m)
		{
			//return n < m;
			return n > m;
		}
	);

	for (i = 0; i < arr.size(); i++)
	{
		cout << arr[i] << ' ';
	}
	cout << '\n';

	return 0;
}